решение задачи - #1
Conversation
| if kind == "copy": | ||
| second = original.copy() |
There was a problem hiding this comment.
Решение хорошее, но не следует использовать вещи, которых нет в теории или которые явно не прописаны в задании. Попробуй реализовать данную часть без метода copy()
| case (x, 0): | ||
| return "on-x" | ||
| case (0, y): | ||
| return "on-y" | ||
| case (x, y): |
There was a problem hiding this comment.
Вместо переменных в этом случае лучше использовать wildcard, так как на не нужны далее сохранённые значения
| else: | ||
| return None |
There was a problem hiding this comment.
Ветка else здесь излишня, так как раньше не вводилось никакое ветвление
| def leaderboard(rows: list[tuple[str, int]]) -> list[tuple[str, int]]: | ||
| return sorted(rows,key = lambda x: (-x[1],x[0])) |
There was a problem hiding this comment.
Решение хорошее, но хочу также увидеть вариант, который показывает именно свойство стабильности сортировки
| def caesar(s: str, k: int) -> str: | ||
| alfa = "abcdefghijklmnopqrstuvwxyz" | ||
| s_new = "" | ||
|
|
||
| for i in s: | ||
| if i in alfa: | ||
| i_new = (alfa.index(i) + k) % 26 | ||
| s_new += alfa[i_new] | ||
| else: | ||
| s_new += i | ||
| return s_new |
There was a problem hiding this comment.
Решение считаю неверным, т.к. функция занимает слишком много памяти из-за постоянного создания новых строк.
| def is_sorted_words(words: list[str]) -> bool: | ||
| return sorted(words)== words |
There was a problem hiding this comment.
Решение рабочее, но при огромных списках не оптимальное, ведь работает за время: O(n log n) и память O(n). есть решение оптимальнее.
задача1.1